<?php
header("content-type:text/html;charset=utf-8");
require_once "./lib/WxPay.Api.php";
require_once "./example/WxPay.NativePay.php";
require_once './example/log.php';

//初始化日志
$logHandler= new CLogFileHandler("../logs/".date('Y-m-d').'.log');
$log = Log::Init($logHandler, 15);

//模式一
//不再提供模式一支付方式
/**

 * 流程：
 * 1、组装包含支付信息的url，生成二维码
 * 2、用户扫描二维码，进行支付
 * 3、确定支付之后，微信服务器会回调预先配置的回调地址，在【微信开放平台-微信支付-支付配置】中进行配置
 * 4、在接到回调通知之后，用户进行统一下单支付，并返回支付信息以完成支付（见：native_notify.php）
 * 5、支付完成之后，微信服务器会通知支付成功
 * 6、在支付成功通知中需要查单确认是否真正支付成功（见：notify.php）
 */

$notify = new NativePay();
//$url1 = $notify->GetPrePayUrl("123456789");

//模式二
/**
 * 流程：
 * 1、调用统一下单，取得code_url，生成二维码
 * 2、用户扫描二维码，进行支付
 * 3、支付完成之后，微信服务器会通知支付成功
 * 4、在支付成功通知中需要查单确认是否真正支付成功（见：notify.php）
 */

$ono = "native".date("YmdHis").mt_rand(100, 999); 

$input = new WxPayUnifiedOrder();
$input->SetBody("保温杯");
$input->SetAttach("保温杯");
$input->SetOut_trade_no($ono);
$input->SetTotal_fee("1");
$input->SetTime_start(date("YmdHis"));
$input->SetTime_expire(date("YmdHis", time() + 600));
$input->SetGoods_tag("test3");
$input->SetNotify_url("http://www.wgf001.top/work/wxpay/notify.php");
$input->SetTrade_type("NATIVE");
$input->SetProduct_id("123456789");

$result = $notify->GetPayUrl($input);
$url2 = $result["code_url"];
?>
<html lang="zh-CN">
<head>
	<meta charset="utf-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<!-- 上述3个meta标签*必须*放在最前面，任何其他内容都*必须*跟随其后！ -->
	<title>微信Native支付</title>
	
	<!-- Bootstrap -->
	<link href="/public/css/bootstrap.min.css" rel="stylesheet">
	<link rel="stylesheet" type="text/css" href="/public/css/main.css"/>
	<link rel="stylesheet" href="wxpay.css" />
	<style type="text/css">
.wdiy{
	width: 300px;
	display: inline-block;
}
.clear{
	clear: both;
}
.col-md-3{
	margin-top: 10px;
	margin-bottom: 10px;
}
	</style>
	
	<!-- HTML5 shim 和 Respond.js 是为了让 IE8 支持 HTML5 元素和媒体查询（media queries）功能 -->
	<!-- 警告：通过 file:// 协议（就是直接将 html 页面拖拽到浏览器中）访问页面时 Respond.js 不起作用 -->
	<!--[if lt IE 9]>
	<script src="https://cdn.jsdelivr.net/npm/html5shiv@3.7.3/dist/html5shiv.min.js"></script>
	<script src="https://cdn.jsdelivr.net/npm/respond.js@1.4.2/dest/respond.min.js"></script>
	<![endif]-->
</head>
<body>
<?php include "../../public/include/head.php";?>
<div class="container">
	<ol class="breadcrumb bg_eee">
		<li><a href="/index.php">首页</a></li>
		<li><a href="../">我的工作</a></li>
		<li class="active">微信Native支付</li>
	</ol>
	<h3 class="text-center bg-primary lhei">微信Native支付</h3>
	<h4>微信Native支付&gt;&gt;购买 保温杯</h4>
	<hr />
	<div class="tab-content min_hei">
		<img src="../alipay_online/img/1.png" width="400px" height="300px"/>
		<h4>请扫码下面二维码完成付款：</h4>
		<img alt="模式二扫码支付" src="./example/qrcode.php?data=<?php echo urlencode($url2);?>" style="width:150px;height:150px;"/>
		<p>支付状态：（正在轮询支付状态,轮询次数： <span id="sumid"></span>）</p>
		<p id="pid"></p>
		
	</div>
</div>
<?php include "../../public/include/footer.php";?>

<!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery，所以必须放在前边) -->
<script type="text/javascript" src="/public/js/jquery-3.3.1.min.js"></script>
<!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 -->
<script type="text/javascript" src="/public/js/bootstrap.min.js"></script>

</body>
<script type="text/javascript">
	var sum = 0;
function ajks(){
	sum++;
	sumid.innerHTML = sum;
	var pid = document.getElementById('pid');
	var ajax = new XMLHttpRequest();ajax.open('get','orderquery_ajax.php?ono=<?php echo $ono;?>');ajax.send();
	ajax.onreadystatechange = function () {
		if (ajax.readyState==4 && ajax.status==200) {
			var state = JSON.parse(ajax.responseText);
			pid.innerHTML = state;
			if(state == "SUCCESS"){
				window.location.href='see_pay_info.php';
			}
			
		}
	}
}
setInterval(ajks,1000);
</script>
</html>